{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "134e7f9d",
   "metadata": {},
   "source": [
    "# Example 3: Deep Formulas\n",
    "\n",
    "The orignal Kolmogorov-Arnold theorem says that it suffices to have 2-Layer function composition (inner and outer functions), but the functions might be non-smooth or even fractal. We generalize KA representation to arbitrary depths. An example a 2-Layer KAN (with smooth activations) is unable to do is: $f(x_1,x_2,x_3,x_4)={\\rm exp}({\\rm sin}(x_1^2+x_2^2)+{\\rm sin}(x_3^2+x_4^2))$, which requires at least 3-Layer KANs."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7854503c",
   "metadata": {},
   "source": [
    "### Three-layer KAN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2075ef56",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 2.39e-02 | test loss: 2.39e-02 | reg: 6.00e+00 : 100%|██| 20/20 [00:18<00:00,  1.09it/s]\n"
     ]
    }
   ],
   "source": [
    "from kan import *\n",
    "\n",
    "# create a KAN: 2D inputs, 1D output, and 5 hidden neurons. cubic spline (k=3), 5 grid intervals (grid=5).\n",
    "model = KAN(width=[4,2,1,1], grid=3, k=3, seed=1)\n",
    "f = lambda x: torch.exp((torch.sin(torch.pi*(x[:,[0]]**2+x[:,[1]]**2))+torch.sin(torch.pi*(x[:,[2]]**2+x[:,[3]]**2)))/2)\n",
    "dataset = create_dataset(f, n_var=4, train_num=3000)\n",
    "\n",
    "# train the model\n",
    "model.fit(dataset, opt=\"LBFGS\", steps=20, lamb=0.002, lamb_entropy=2.);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "d81e80f7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 500x600 with 16 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model.plot(beta=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "b8c880c1",
   "metadata": {},
   "outputs": [],
   "source": [
    "model = model.prune(edge_th=5e-2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "585b699c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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a4vq8vmXlpaKQYMGiZCQELFv375qn/+RI0dE586dRf/+/Rv186/LeyguLhbh4eGiS5cu4uDBg9Xew8mTJ0XXrl1Fnz59REFBQa2Wae/fISHq/j0aOnSo6NChg9iyZYswGAymx2RZFklJSeK+++4Td999t8jOzq7VMi9evGj320AIIRguldT2SynLsnj++edF+/btxS+//FLlR6Hyc44fPy7at28vJk6cWONzbmTvPwx1+fxfeukl0bZtW3H48OGbfv4nT54U7du3FxMmTGi0z7+278FgMIhx48aJgIAAcfLkyZu+h8TERBEUFCRGjhxZ5YfvZuz9OyRE3b5HkydPFm3atBF79+696XckNTVVhISEiEceeaRW24Dhch3DpZLafil37dol/Pz8xNq1a2/5oyXLsli9erXw8/MTu3btuu1y7f2Hobaf/48//ij8/PzE8uXLb/v5r1u3Tvj5+Ynt27ffdrmNFS6yLIsvv/xStG7dWmzZsuW272H79u2idevWYv369bcNSXv/DglR+22wZcsW4evrKz7//PPbboN9+/YJX19fsXLlyttuA4bLdQyXSmrzpSwtLRWdOnUSQ4YMqdXRsMFgEEOGDBGdOnUSpaWlt3yuvf8w1Obzr6ioEHfddZeIiIio1VGkLMviscceE6GhoY3y+dfmPVy7dk0EBgaKp556qlbfIVmWxbhx40RgYKAoKiq65XPt/TskRO23QUBAgBg1alStt8Ezzzwj2rdvf9ttwHC5zr47YteREAJLlixBYWEhli1bVqveIxqNBsuWLUNhYSEWLVpkunGL6ue///0vcnJysHz58lrdRyBJEpYtW4aioiJ88MEHqn/+QghMnz4dQggsWrSoVt8hSZKwePFiGAwGzJo1S/X3YO2EEJg6dSoMBgP+85//1HobfPDBBzAYDJg5cya3QS0wXOqgtLQUH374IZ588km0atWq1q9r1aoVRo0ahf/85z+mu/ap7srLyzFv3jwMHDgQ7du3r/XrWrZsidGjR+OTTz4xDb2jlqtXr2Lz5s2YMmVKnQbI9PT0xMSJE7F27VrTlApUPxkZGdi8eTOmTZtWp27eHh4epm1gHJGcbo7hUgdLly41HbnU5cYqSZLw1ltvQZZlLFy40IwV2rbPP/8cZWVlmDdvnlV+/sazFhcXFzz33HN1fg8vvfQStFot5syZwyPnehJC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\n",
      "text/plain": [
       "<Figure size 500x600 with 16 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "ee39c97b",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 4.80e-03 | test loss: 5.09e-03 | reg: 5.47e+00 : 100%|██| 50/50 [00:46<00:00,  1.08it/s]\n",
      "train loss: 1.83e-03 | test loss: 1.85e-03 | reg: 5.63e+00 : 100%|██| 50/50 [00:48<00:00,  1.04it/s]\n",
      "train loss: 1.42e-04 | test loss: 1.41e-04 | reg: 5.63e+00 : 100%|██| 50/50 [00:40<00:00,  1.23it/s]\n",
      "train loss: 1.68e-05 | test loss: 1.67e-05 | reg: 5.63e+00 : 100%|██| 50/50 [00:36<00:00,  1.35it/s]\n",
      "train loss: 5.21e-06 | test loss: 4.05e-06 | reg: 5.63e+00 : 100%|██| 50/50 [00:46<00:00,  1.08it/s]\n"
     ]
    }
   ],
   "source": [
    "grids = [3,5,10,20,50]\n",
    "#grids = [5]\n",
    "\n",
    "train_rmse = []\n",
    "test_rmse = []\n",
    "\n",
    "for i in range(len(grids)):\n",
    "    model = KAN(width=[4,2,1,1], grid=grids[i], k=3, seed=0).initialize_from_another_model(model, dataset['train_input'])\n",
    "    results = model.fit(dataset, opt=\"LBFGS\", steps=50, stop_grid_update_step=30);\n",
    "    train_rmse.append(results['train_loss'][-1].item())\n",
    "    test_rmse.append(results['test_loss'][-1].item())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "94f3930a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0.00480159604921937, 0.0018265467369928956, 0.0001422630884917453, 1.6824298654682934e-05, 5.211888037592871e-06]\n",
      "[0.005089011508971453, 0.001845053629949689, 0.00014135859964881092, 1.6715566744096577e-05, 4.054095370520372e-06]\n"
     ]
    },
    {
     "data": {
      "image/png": "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07JlS44dO8Ytt9zCuHHjyM7OdnRpUgopvIiISLFo2LAha9as4dFHHwXgzTff5H//+x+xsbEOrkxKG4UXEREpNm5ubrz//vt89913+Pr6snbtWm6//XbK2PBLKWIKLyIiUuz69u1LVFQUN9xwAzNmzMAwDEeXJKWI5quJiIhD1KtXj5UrV+YLLj/88AMhISHUq1fPgZVJSaeeFxERcZhzg0t0dDR33303ISEh/PDDDw6sSko6hRcRESkRKleuTGhoKMnJyfTt25fHHnuMU6dOObosKYEUXkREpESoVasWy5YtY/z48QB88MEHtGvXjt27dzu4MilpFF5ERKTEcHFxYfLkyfz2229UqVKFqKgoWrZsyTfffOPo0qQEUXgREZESp0ePHkRHR9O+fXtSU1PZtWuXo0uSEkSzjUREpES65pprWLJkCZ9//jnDhg3LO26apqZWl3PqeRERkRLL2dmZ+++/H4vFAkBGRgY33ngj//d//+fgysSRFF5ERKTU+PDDD1mzZg1DhgzhvvvuIz093dEliQOUyPCyb98+OnXqRGBgIM2aNePkyZOOLklEREqAxx9/nJdeegnDMPjss88ICwtj+/btji5LilmJDC/Dhg3j5ZdfJiYmhuXLl+Pm5ubokkREpASwWCy8+OKL/Pnnn1SvXp2YmBjCwsL47LPPtD9SOVLiwsv27dtxcXGhffv2APj5+eHsrHHFIiJyVqdOndiyZQtdunQhIyOD++67jzfeeMPRZUkxKXR4WbFiBb169SIgIADDMJg/f/5510yfPp169erh7u5OaGgoK1euLPD9d+3ahbe3N71796Zly5a8/vrrhS1RRETKgWrVqrFw4UJee+01qlWrxqBBgxxdkhSTQoeXkydP0qJFCz744IMLnp87dy6jRo3i2WefJSoqivbt29OjRw9iY2PzrgkNDSUoKOi8V1xcHNnZ2axcuZLw8HDWrl1LREQEERERF60nMzOTlJSUfC8RESkfnJyceOaZZ9i1axe1atXKO75u3To9RirDDPMq/ukahsGPP/5Inz598o61adOGli1bMmPGjLxjTZs2pU+fPkyaNOmy91y7di0TJ05k4cKFALz55psAjB079oLXv/TSS0ycOPG848nJyfj4+BTm64iISBmwYMECbrvtNgYMGMDMmTP1W1BKpKSk4OvrW6Dfb7uOecnKyiIyMpKu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//XXX9OnT58ibTctLe2i5ywWS773CQkJF732vwOc7PkPOyoqirvvvhuAjh074urqyh9//MHmzZsJCQmxWzsiIlK+ubq6MnXqVDp27MiwYcPYsGEDISEh7Ny5s1AzW4tKiQsv1157LdHR0UBuoKhbty5dunQp8na9vLwcfu2l7N27lxMnTuT1vDg7O9OrVy++//57tm3bxs0332yXdkRERM647bbbiI6OZsCAAVx//fUlIrhACQwv51qwYAE33XST3QJAaRYZGYmrqytBQUF5x/r27cuQIUNIT09n3LhxDqxORETKqjp16rBixQpM03R0KXkKPeZlxYoV9OrVi4CAAAzDYP78+eddM336dOrVq4e7uzuhoaGsXLnyioqbN29evkdI5dnmzZsJCgrC1dU171iXLl2wWq1kZWUVeKaRiIhIYbm4uOT7/XG0QoeXkydP0qJFCz744IMLnp87dy6jRo3i2WefJSoqivbt29OjRw9iY2PzrgkNDSUoKOi8V1xcXN41KSkprF69WsvXnzZp0qTz1m5xc3MjJSUF0zTzzdEXEREpywr92KhHjx7nTQc+1zvvvMP999/PAw88AMC7777LH3/8wYwZM/KWo7/UAmpn/PTTT3Tr1g13d/dLXpeZmZlvJdmUlJSCfA0REREppew6VTorK4vIyEi6du2a73jXrl0LvQx9QR8ZTZo0CV9f37xXSV0NUEREROzDruElMTERq9WKv79/vuP+/v4cPny4wPdJTk5mw4YNdOvW7bLXTpgwgeTk5LzXgQMHCl23iIiIlB5FMtvovztTmqZZqN0qfX19OXLkSIGudXNzw83NrVD1iYiISOll156XKlWqYLFYzutlSUhIOK83xt7Cw8MJDAwkLCysSNsRERERx7JreHF1dSU0NJSIiIh8xyMiImjXrp09mzrPyJEjiYmJYePGjZe9tiTNVS+t9GcoIiKOUujHRmlpaezevTvv/b59+4iOjsbPz4/atWszZswYhgwZQqtWrWjbti0fffQRsbGxjBgxwq6FXwkXFxcA0tPT8fDwcHA1pVt6ejpw9s9URESkuBQ6vGzatIlOnTrlvR8zZgwAQ4cOZfbs2fTv359jx47x8ssvEx8fT1BQEL/99ht16tSxX9UXEB4eTnh4OFar9aLXWCwWKlasmLc3kaenZ6HG4khuj0t6ejoJCQlUrFjxvH2fREREipphlrH+/5SUFHx9fUlOTsbHx+e886ZpcvjwYU6cOFH8xZUhFStWpHr16gp/IiJiF5f7/T5Xid7bqCgYhkGNGjWoVq0a2dnZji6nVHJxcVGPi4iIOEy5Cy9nWCwW/QCLiIiUQnadbeRImiotIiJSPpS7MS8iIiJS8hTm97vM9LyIiIhI+VDmxryc6UjS7tIiIiKlx5nf7YI8ECpz4SU1NRVAu0uLiIiUQqmpqfj6+l7ymjI35sVmsxEXF0eFChUuugZJWFhYgbYRKGlKUt2OqqWo2y2q+9vzvldzr5SUFGrVqsWBAwc0JqyUKkl/DzhKaf0zKEl1l8S/w03TJDU1lYCAAJycLj2qpcz1vDg5OVGzZs1LXmOxWErlX9wlqW5H1VLU7RbV/e15X3vcy8fHp8T8d0kKpyT9PeAopfXPoCTVXVL/Dr9cj8sZ5XLA7siRIx1dwhUpSXU7qpaibreo7m/P+5ak/x5I8dM//9L7Z1CS6i7tf4eXucdGInJxWkpARMqCctnzIlJeubm58eKLL+Lm5uboUkRErph6XkRERKRUUc+LiIiIlCoKLyIiIlKqKLyIiIhIqaLwIiIiIqWKwouIiIiUKgovIgLAgQMH6NixI4GBgTRv3pxvv/3W0SWJiFyQpkqLCADx8fEcOXKE4OBgEhISaNmyJTt37sTLy8vRpYmI5FPm9jYSkStTo0YNatSoAUC1atXw8/MjKSlJ4UVEShw9NhIpI1asWEGvXr0ICAjAMAzmz59/3jXTp0+nXr16uLu7ExoaysqVKy94r02bNmGz2ahVq1YRVy0iUngKLyJlxMmTJ2nRogUffPDBBc/PnTuXUaNG8eyzzxIVFUX79u3p0aMHsbGx+a47duwY99xzDx999FFxlC0iUmga8yJSBhmGwY8//kifPn3yjrVp04aWLVsyY8aMvGNNmzalT58+TJo0CYDMzEy6dOnC8OHDGTJkSHGXLSJSIOp5ESkHsrKyiIyMpGvXrvmOd+3alTVr1gBgmibDhg2jc+fOCi4iUqIpvIiUA4mJiVitVvz9/fMd9/f35/DhwwCsXr2auXPnMn/+fIKDgwkODuavv/5yRLkiIpek2UYi5YhhGPnem6aZd+zGG2/EZrM5oiwRkUJRz4tIOVClShUsFkteL8sZCQkJ5/XGiIiUdAovIuWAq6sroaGhRERE5DseERFBu3btHFSViMiV0WMjkTIiLS2N3bt3573ft28f0dHR+Pn5Ubt2bcaMGcOQIUNo1aoVbdu25aOPPiI2NpYRI0Y4sGoRkcLTVGmRMmLZsmV06tTpvONDhw5l9uzZQO4idVOmTCE+Pp6goCCmTp1Khw4dirlSEZGro/AiIiIipYrGvIiIiEipovAiIiIipYrCi4iIiJQqCi8iIiJSqii8iIiISKmi8CIiIiKlisKLiIiIlCoKLyIiIlKqKLyIiIhIqaLwIiIiIqWKwouIiIiUKgovIiIiUqr8P0JhpsA0EVK3AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "n_params = np.array(grids) * (4*2+2*1+1*1)\n",
    "plt.plot(n_params, train_rmse, marker=\"o\")\n",
    "plt.plot(n_params, test_rmse, marker=\"o\")\n",
    "plt.plot(n_params, 10000*n_params**(-4.), color=\"black\", ls=\"--\")\n",
    "plt.legend(['train', 'test', r'$N^{-4}$'], loc=\"lower left\")\n",
    "plt.xscale('log')\n",
    "plt.yscale('log')\n",
    "print(train_rmse)\n",
    "print(test_rmse)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f53644fe",
   "metadata": {},
   "source": [
    "### Two-layer KAN\n",
    "\n",
    "Now we show that a 2 two-layer KAN performs much worse for this task"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "ae7b654b",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 6.72e-02 | test loss: 6.97e-02 | reg: 7.20e+00 : 100%|██| 20/20 [00:30<00:00,  1.52s/it]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 500x400 with 56 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from kan import KAN, create_dataset\n",
    "import torch\n",
    "\n",
    "# create a KAN: 2D inputs, 1D output, and 5 hidden neurons. cubic spline (k=3), 5 grid intervals (grid=5).\n",
    "model = KAN(width=[4,9,1], grid=3, k=3, seed=0)\n",
    "f = lambda x: torch.exp((torch.sin(torch.pi*(x[:,[0]]**2+x[:,[1]]**2))+torch.sin(torch.pi*(x[:,[2]]**2+x[:,[3]]**2)))/2)\n",
    "dataset = create_dataset(f, n_var=4, train_num=3000)\n",
    "\n",
    "# train the model\n",
    "model.fit(dataset, opt=\"LBFGS\", steps=20, lamb=0.002, lamb_entropy=2.);\n",
    "model.plot(beta=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "869828f2",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 3.59e-02 | test loss: 5.23e-02 | reg: 1.04e+01 : 100%|██| 50/50 [01:18<00:00,  1.57s/it]\n",
      "train loss: 2.28e-02 | test loss: 3.10e-02 | reg: 1.04e+01 : 100%|██| 50/50 [01:25<00:00,  1.70s/it]\n",
      "train loss: 8.34e-03 | test loss: 1.09e-02 | reg: 1.03e+01 : 100%|██| 50/50 [01:32<00:00,  1.86s/it]\n",
      "train loss: 5.71e-03 | test loss: 1.06e-02 | reg: 9.86e+00 : 100%|██| 50/50 [01:45<00:00,  2.10s/it]\n",
      "train loss: 1.03e-02 | test loss: 6.30e-02 | reg: 9.68e+00 : 100%|██| 50/50 [01:57<00:00,  2.36s/it]\n"
     ]
    }
   ],
   "source": [
    "grids = [3,5,10,20,50]\n",
    "\n",
    "train_rmse = []\n",
    "test_rmse = []\n",
    "\n",
    "for i in range(len(grids)):\n",
    "    model = KAN(width=[4,9,1], grid=grids[i], k=3, seed=0).initialize_from_another_model(model, dataset['train_input'])\n",
    "    results = model.fit(dataset, opt=\"LBFGS\", steps=50, stop_grid_update_step=30);\n",
    "    train_rmse.append(results['train_loss'][-1].item())\n",
    "    test_rmse.append(results['test_loss'][-1].item())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "4f0a99fd",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0.035936225205659866, 0.02279285155236721, 0.00833611935377121, 0.005708411335945129, 0.010341067798435688]\n",
      "[0.05229281634092331, 0.031011207029223442, 0.010879972018301487, 0.010645035654306412, 0.06304473429918289]\n"
     ]
    },
    {
     "data": {
      "image/png": "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qlXw9PTE1q1boWPv/Yi0BsMLEVEV7Ozs8Ntvv+HgwYNo0aIFUlJSMGLECLzwwgu4cuWK2OUR6R2GFyKiaurTpw8uX76MRYsWwdzcHGFhYWjdujUDDFEd45wXIqLnkJiYiEmTJiE3Nxf79++HRCIRuyQircY5L0REatakSRP88ccf2LlzpzK4PHjwAIMHD0ZkZKTI1RHpNp0JL9xVmojEYGpqqvzzrFmz8OeffyIgIACTJ09GVlaWiJUR6S7eNiIiUpFbt27h448/xs6dOwEADRo0wFdffYU333yTt5WIqsDbRkREInB1dcWOHTuwf/9+eHh4IDk5GUOHDkWvXr0QFRUldnlEOoPhhYhIxfr3748rV65g3rx5MDU1xZEjR7BmzRqxyyLSGQwvRERqYGpqipkzZ+LatWsYPnw45s+fr3wsOzubC9wR1QLDCxGRGrm5ueGHH36Avb09AEChUOD1119H7969ce3aNZGrI9JODC9ERHUoNjYWx44dw+HDh+Hn54dp06YhJydH7LKItArDCxFRHfL09MTVq1cRHByMkpISLFmyBF5eXvj99995K4momhheiIjqWNOmTbF7927s3r0b7u7uuHv3Lt544w307dsXKSkpYpdHpPF0JrxwkToi0jbBwcG4evUqZs+eDRMTEyQmJsLW1lbssog0HhepIyLSADdu3EB6erryDVhxcTEOHjyIAQMGcIE70gtcpI6ISMs0a9aszMjxmjVrMHDgQLz44ouIjY0VsTIizcPwQkSkgYqLi2FsbIyDBw/C19cXM2bMQG5urthlEWkEhhciIg00bdo0XL16Ff3790dRUREWLlwIb29v7Ny5k11JpPcYXoiINJSHhwf27duHnTt3okmTJkhMTMSrr76KmTNnil0akagYXoiINJhEIsGgQYNw7do1zJgxAxYWFhg6dKjYZRGJit1GRERa5OHDh6hXr57yeNGiRfD29sbLL7/MriTSauw2IiLSUU8Gl0uXLmHmzJkYNGgQBg4ciBs3bohYGVHdYXghItJSHh4emDZtGoyMjLB//360atUKX3zxBfLz88UujUitGF6IiLSUhYUFFi5ciCtXrqB3794oLCzEnDlz0KpVK+zdu1fs8ojURmfCC7cHICJ95enpiYMHD+K3335Dw4YNER8fj2HDhuHhw4dil0akFpywS0SkQ3JycjBv3jy4u7tj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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "n_params = np.array(grids) * (4*9+9*1)\n",
    "plt.plot(n_params, train_rmse, marker=\"o\")\n",
    "plt.plot(n_params, test_rmse, marker=\"o\")\n",
    "plt.plot(n_params, 300*n_params**(-2.), color=\"black\", ls=\"--\")\n",
    "plt.legend(['train', 'test', r'$N^{-4}$'], loc=\"lower left\")\n",
    "plt.xscale('log')\n",
    "plt.yscale('log')\n",
    "print(train_rmse)\n",
    "print(test_rmse)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5776b6e1",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
